const { insertSort } = require("./插入排序");

/* 
  选择排序
    时间复杂度：O(N^2)  额外空间复杂度O(1)
*/
var selectSort = function (arr) {
  if (arr.length < 2) return arr;
  for (let i = 0; i < arr.length; i++) {
    let minIndex = i;
    for (let j = i + 1; j < arr.length; j++) {
      minIndex = arr[minIndex] > arr[j] ? j : minIndex;
    }
    // 交换位置
    let temp = arr[minIndex];
    arr[minIndex] = arr[i];
    arr[i] = temp;
  }
  return arr;
};

// let arr = [
//   12, 45, 45, 78, 721, 45, 12, 4544, 54, 45, 45, 445, 454, 5, 1212, 45, 10, 1,
//   1,
// ];
// let res = selectSort(arr);
// console.log(res);

module.exports = {
  selectSort,
};
